package com.ruoyi.movie.service;

import java.util.List;
import com.ruoyi.movie.domain.MovieBasicToCountry;

/**
 * 影视国家关联Service接口
 *
 * @author ruoyi
 * @date 2025-10-28
 */
public interface IMovieBasicToCountryService
{
    /**
     * 查询影视国家关联
     *
     * @param movieBasicToCountryId 影视国家关联主键
     * @return 影视国家关联
     */
    public MovieBasicToCountry selectMovieBasicToCountryById(Integer movieBasicToCountryId);

    /**
     * 查询影视国家关联列表
     *
     * @param movieBasicToCountry 影视国家关联
     * @return 影视国家关联集合
     */
    public List<MovieBasicToCountry> selectMovieBasicToCountryList(MovieBasicToCountry movieBasicToCountry);

    /**
     * 根据影视ID查询关联的国家ID列表
     *
     * @param movieBasicsId 影视基础ID
     * @return 国家ID集合
     */
    public List<Integer> selectCountryIdsByMovieBasicsId(Integer movieBasicsId);

    /**
     * 新增影视国家关联
     *
     * @param movieBasicToCountry 影视国家关联
     * @return 结果
     */
    public int insertMovieBasicToCountry(MovieBasicToCountry movieBasicToCountry);

    /**
     * 批量新增影视国家关联
     *
     * @param movieBasicsId 影视基础ID
     * @param countryIds 国家ID数组
     * @return 结果
     */
    public int batchInsertMovieBasicToCountry(Integer movieBasicsId, Integer[] countryIds);

    /**
     * 修改影视国家关联
     *
     * @param movieBasicToCountry 影视国家关联
     * @return 结果
     */
    public int updateMovieBasicToCountry(MovieBasicToCountry movieBasicToCountry);

    /**
     * 批量删除影视国家关联
     *
     * @param movieBasicToCountryIds 需要删除的影视国家关联主键集合
     * @return 结果
     */
    public int deleteMovieBasicToCountryByIds(Integer[] movieBasicToCountryIds);

    /**
     * 删除影视国家关联信息
     *
     * @param movieBasicToCountryId 影视国家关联主键
     * @return 结果
     */
    public int deleteMovieBasicToCountryById(Integer movieBasicToCountryId);

    /**
     * 根据影视ID删除关联
     *
     * @param movieBasicsId 影视基础ID
     * @return 结果
     */
    public int deleteMovieBasicToCountryByMovieBasicsId(Integer movieBasicsId);

    /**
     * 保存影视国家关联（先删除旧的，再批量插入新的）
     *
     * @param movieBasicsId 影视基础ID
     * @param countryIds 国家ID数组
     * @return 结果
     */
    public int saveMovieBasicToCountry(Integer movieBasicsId, Integer[] countryIds);
}
